package models.dao;

import models.entities.ModuleUri;
import models.repo.IRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class ModuleUriDAO {
	@Autowired
	private IRepository repo;
	
	public ModuleUri createModule(ModuleUri moduleUri) throws Exception {
		if (moduleUri == null) {
			throw new IllegalArgumentException("module");
		}

		repo.create(moduleUri);
		
		return repo.getEntityById(ModuleUri.class, moduleUri.getUriId());
	}

	public void deleteModule(ModuleUri moduleUri) throws Exception {
		if (moduleUri == null) {
			throw new IllegalArgumentException("module");
		}
		repo.delete(moduleUri);
		
	}

	public ModuleUri getModuleById(Long id) throws Exception {
		return repo.getEntityById(ModuleUri.class, id);
	}
	
	
	public void updateShop(ModuleUri moduleUri) throws Exception {
		if (moduleUri == null) {
			throw new IllegalArgumentException("shop");
		}
		
		repo.update(moduleUri);
	}
}
